package com.bjsxt.service;

import com.bjsxt.commons.exception.DaoException;
import com.bjsxt.commons.pojo.BaizhanResult;
import com.bjsxt.pojo.TbItem;
import com.bjsxt.pojo.TbItemDesc;
import com.bjsxt.pojo.TbItemParamItem;

/**
 * @author coder_z
 * @date 2023/2/8
 **/
public interface ItemService {

    /**
     * 分页查询
     * @param page
     * @param rows
     * @return
     */
    BaizhanResult showPage(Integer page,Integer rows);

    /**
     * 新增商品信息
     * @param item
     * @param desc
     * @param itemParamItem
     * @return
     * @throws DaoException
     */
    BaizhanResult insert(TbItem item, TbItemDesc desc,TbItemParamItem itemParamItem)throws DaoException;

    /**
     * 根据主键修改商品状态
     * @param item
     * @return
     */
    BaizhanResult updateStatusById(TbItem item);

    /**
     * 根据商品主键查询商品信息 商品分类信息 商品描述 商品规格参数
     * @param id
     * @return
     */
    BaizhanResult selectAllById(long id);

    /**
     * 根据商品主键修改商品信息
     * @param item
     * @return
     */
    BaizhanResult updateById(TbItem item);

    /**
     * 根据商品信息 修改商品表 商品描述表 商品规格参数表信息
     * @param item
     * @return
     */
    BaizhanResult updateAllById(TbItem item,TbItemDesc desc,TbItemParamItem paramItem)throws DaoException;

}
